Passive monitors are widely used for determining performance of the usage of systems. Although passive monitors have proven to be accurate at measuring performance of a system, if used to track availability of a system, they have proven to be inaccurate especially during time periods when usage is infrequent or idle and there is no activity to monitor. Real usage of the system must be occurring to confirm that the system is up and ready to work normally.
Active monitors, such as synthetic activity generators, are used to simulate activity to confirm normal performance and also check availability of a system. Active monitors have proven to be less accurate at determining true performance, but can be very accurate at determining the system's availability for normal activity.
The problem with active monitors is that in order to work, they need to continue to execute simulated activity even during peak times of system usage and can become very intrusive. They are known to consume significant amounts of expensive system resources that need to be available for real production activities, thus impacting both performance and throughput. Active monitors need to continue to generate activity continuously to accurately monitor, even when the system is at peak usage. In one technique, active monitoring of interactive computer transaction systems using synthetic transaction generators, active monitoring is known to consume from 5 to as much as 60 percent of a system's resources where the active monitoring is used to assure the system is available for normal activity.
Synthetic activity generators are the most common viable availability tracking method available for real time systems. However, they have proven to consume too many resources of a system to be used extensive enough to achieve the accuracy needed in the industry. Synthetic activity typically executes the same type of activity repeatedly, usually within a short period of time. In the above described technique, active monitoring of interactive computer transaction systems using synthetic transaction generators, the data associated with the synthetic transactions tend to remain in cache memories such as disk drive cache and system buffers. As a consequence, in this technique, this type of monitoring will give an overly optimistic indication of actual end-user performance experience. Also, in this technique, this type of monitoring tool uses the most precious resources on the monitored systems: CPU, disk, network, and memory, limiting those resources availability for real business transactions. Hence, this type of monitoring has proven to be very costly and detrimental to performance, yet continues to be used as an early warning for critical systems such as online banking systems, Bank ATM systems, and other systems that have an immediate impact on corporate revenues.